#include <stdio.h>
#include <sys/types.h>
#include <fcntl.h>  // 包含文件操作标志
#include <unistd.h> // 包含 open、dup、close 函数声明

int main() {
    int fd1, fd2, fd3;
    // 打开文件并检查是否成功
    fd1 = open("test.txt", O_RDWR | O_TRUNC);
    if (fd1 < 0) {
        perror("open failed");
        return 1;
    }
    fd2 = dup(fd1);
    printf("fd2=%d\n", fd2);
    fd3 = dup(fd1);
    printf("fd3=%d\n", fd3);
    // 关闭文件描述符，避免资源泄漏
    close(fd1);
    close(fd2);
    close(fd3);
    return 0;
}
